package com.chenyi.shop.service.impl;

import java.util.List;

import com.chenyi.common.constant.Constants;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.chenyi.shop.mapper.SysShopLoginMapper;
import com.chenyi.shop.domain.SysShopLogin;
import com.chenyi.shop.service.ISysShopLoginService;

/**
 * 商户登录记录Service业务层处理
 * 
 * @author chenyi
 * @date 2020-10-24
 */
@Service
public class SysShopLoginServiceImpl implements ISysShopLoginService 
{
    @Autowired
    private SysShopLoginMapper sysShopLoginMapper;

    /**
     * 查询商户登录记录
     * 
     * @param infoId 商户登录记录ID
     * @return 商户登录记录
     */
    @Override
    public SysShopLogin selectSysShopLoginById(Long infoId)
    {
        return sysShopLoginMapper.selectSysShopLoginById(infoId);
    }

    /**
     * 查询商户登录记录列表
     * 
     * @param sysShopLogin 商户登录记录
     * @return 商户登录记录
     */
    @Override
    public List<SysShopLogin> selectSysShopLoginList(SysShopLogin sysShopLogin)
    {
        return sysShopLoginMapper.selectSysShopLoginList(sysShopLogin);
    }

    /**
     * 新增商户登录记录
     * 
     * @param sysShopLogin 商户登录记录
     * @return 结果
     */
    @Override
    public int insertSysShopLogin(SysShopLogin sysShopLogin)
    {
        return sysShopLoginMapper.insertSysShopLogin(sysShopLogin);
    }

    /**
     * 修改商户登录记录
     * 
     * @param sysShopLogin 商户登录记录
     * @return 结果
     */
    @Override
    public int updateSysShopLogin(SysShopLogin sysShopLogin)
    {
        return sysShopLoginMapper.updateSysShopLogin(sysShopLogin);
    }

    /**
     * 批量删除商户登录记录
     * 
     * @param infoIds 需要删除的商户登录记录ID
     * @return 结果
     */
    @Override
    public int deleteSysShopLoginByIds(Long[] infoIds)
    {
        return sysShopLoginMapper.deleteSysShopLoginByIds(infoIds);
    }

    /**
     * 删除商户登录记录信息
     * 
     * @param infoId 商户登录记录ID
     * @return 结果
     */
    @Override
    public int deleteSysShopLoginById(Long infoId)
    {
        return sysShopLoginMapper.deleteSysShopLoginById(infoId);
    }

    @Override
    public SysShopLogin selectShopLoginByToken(String token, String status) {
        // 日志状态
        if (Constants.LOGIN_SUCCESS.equals(status) || Constants.LOGOUT.equals(status))
        {
            status = Constants.SUCCESS;
        }
        else if (Constants.LOGIN_FAIL.equals(status))
        {
            status = Constants.FAIL;
        }
        return sysShopLoginMapper.selectShopLoginByToken(token,status);
    }
}
